package apuesta.servlet;

import java.io.IOException;
import java.util.List;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.hibernate.Query;
import org.hibernate.Session;

import apuesta.dto.EventoDto;
import apuesta.dto.ReporteGanaciasDto;
import apuesta.hibernate.HibernateFactoryApuesta;
import apuesta.service.ReporteService;

/**
 * Servlet implementation class Modificar
 */
public class Modificar extends HttpServlet {
	private static final long serialVersionUID = 1L;
    
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String accion = request.getParameter("accion");
		System.out.println("accion: "+accion);
		if(accion.equals("listar")){
			List<ReporteGanaciasDto> ganancias = ReporteService.reporteGanancia();
			for (ReporteGanaciasDto r : ganancias) {
				System.out.print("cantidad: "+r.getCantidadGenerada());
				System.out.print(" descripcion: "+r.getDescripcion_Evento());
				System.out.println(" pozo: "+r.getPozo_Evento());
			}
			request.setAttribute("listaGanancias", ganancias);
			RequestDispatcher rd = request.getRequestDispatcher("/listadoEventos.jsp");
			rd.include(request, response);
		}else if(accion.equals("mod")){
			try {
	            Session session = HibernateFactoryApuesta.getSessionFactory().openSession();
	            session.beginTransaction();
	            
	            Query query = session.createSQLQuery("update t_evento set fecha_Evento=:p_fechaEvento where Id_Evento =:p_idEvento");
	            //xquery.setDate("p_fechaEvento", request.getAttribute("fecha"));
	            query.setInteger("p_idEvento", Integer.parseInt(""+request.getAttribute("idEvento")));
	            query.executeUpdate();
	            
	            session.flush();
	            session.getTransaction().commit();
	            
	        } catch (Exception ex) {
	            ex.printStackTrace();
	        }
		}
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
	}

}
